+2006-09-06 Richard Hult <richard@imendio.com>
+
+ * gdk/quartz/gdkkeys-quartz.c: (maybe_update_keymap): Special-case
+ shift-tab and map it to GDK_ISO_Left_Tab, fixes bug #350806.
+
2006-09-04 Kristian Rietveld <kris@imendio.com>
* gtk/gtkfilechooserdefault.c (update_current_folder_get_info_cb):
for (i = 0; i < NUM_KEYCODES; i++)
{
int j;
- UInt32 modifiers[] = {0, shiftKey, optionKey, shiftKey|optionKey};
+ UInt32 modifiers[] = {0, shiftKey, optionKey, shiftKey | optionKey};
p = keyval_array + i * KEYVALS_PER_KEYCODE;
UInt16 key_code;
UniChar uc;
- key_code = modifiers[j]|i;
+ key_code = modifiers[j] | i;
c = KeyTranslate (chr_data, key_code, &state);
if (state != 0)
}
}
+ /* Special-case shift-tab since GTK+ expects
+ * GDK_ISO_Left_Tab for that.
+ */
+ if (found && p[j] == GDK_Tab && modifiers[j] == shiftKey)
+ p[j] = GDK_ISO_Left_Tab;
+
if (!found)
p[j] = gdk_unicode_to_keyval (uc);
}
for (i = 0; i < NUM_KEYCODES; i++)
{
int j;
- UInt32 modifiers[] = {0, shiftKey, optionKey, shiftKey|optionKey};
+ UInt32 modifiers[] = {0, shiftKey, optionKey, shiftKey | optionKey};
UniChar chars[4];
UniCharCount nChars;
UInt16 key_code;
UniChar uc;
- key_code = modifiers[j]|i;
+ key_code = modifiers[j] | i;
err = UCKeyTranslate (chr_data, i, kUCKeyActionDown,
(modifiers[j] >> 8) & 0xFF,
LMGetKbdType(),